Eshell recognizes several different kinds of command arguments:
Most users need to worry only about the first two. The third, Lisp lists, occur very frequently, but almost always behind the scenes.
Strings are the most common type of argument, and consist of nearly any character. Special characters—those used by Eshell specifically—must be preceded by a backslash (‘\’). When in doubt, it is safe to add backslashes anywhere and everywhere.
Here is a more complicated echo example:
echo A\ Multi-word\ Argument\ With\ A\ \$\ dollar
Beyond this, things get a bit more complicated. While not beyond the reach of someone wishing to learn, it is definitely beyond the scope of this manual to present it all in a simplistic manner. Get comfortable with Eshell as a basic command invocation tool, and learn more about the commands on your system; then come back when it all sits more familiarly on your mind. Have fun!